﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using BUS;
using DTO;

namespace GUI
{
    public partial class FormSuaSanPham : Window
    {
        private int masp;
        public FormSuaSanPham()
        {
            InitializeComponent();
            hoiThoat = false;
        }
        public FormSuaSanPham(int masp)
        {
            InitializeComponent();
            this.masp = masp;
            hoiThoat = false;
        }      

        private void FormSuaSanPham_Load(object sender, EventArgs e)
        {
            txtMaSP.Enabled = false;
            btnLuu.Enabled = false;
            btnSua.Enabled = true;
            txtTenSP.ReadOnly = true;
            txtDonGiaKL.ReadOnly = true;
            txtDonGiaTV.ReadOnly = true;
            txtQuyCach.ReadOnly = true;
            txtDonViTinh.ReadOnly = true;
            txtDiemCV.ReadOnly = true;
            txtSLTon.ReadOnly = true;
            List<SanPhamDTO> ds = new List<SanPhamDTO>();
            SanPhamBUS bus = new SanPhamBUS();
            ds = bus.ChiTietSP(masp);
            txtMaSP.Text = ds[0].MaSP.ToString();
            txtTenSP.Text = ds[0].TenSP;
            txtDonGiaKL.Text = ds[0].DonGiaKL.ToString();
            txtDonGiaTV.Text = ds[0].DonGiaTV.ToString();
            txtQuyCach.Text = ds[0].QuyCach;
            txtDonViTinh.Text = ds[0].DVT;
            txtDiemCV.Text = ds[0].DiemCV.ToString();
            txtSLTon.Text = ds[0].SLTon.ToString();
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            SanPhamDTO spDTO = new SanPhamDTO();
            spDTO.MaSP = int.Parse(txtMaSP.Text.Trim());
            if (txtTenSP.Text.Length != 0)
            {
                spDTO.TenSP = txtTenSP.Text.Trim();
            }
            else
            {
                MessageBox.Show("Nhập tên sản phẩm!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (txtDonGiaTV.Text.Length != 0 && txtDonGiaKL.Text.Length != 0)
            {
                if (KiemTraSo(txtDonGiaTV.Text) && KiemTraSo(txtDonGiaKL.Text))
                {
                    spDTO.DonGiaTV = int.Parse(txtDonGiaTV.Text.Trim());
                    spDTO.DonGiaKL = int.Parse(txtDonGiaKL.Text.Trim());
                }
                else
                {
                    MessageBox.Show("Nhập đơn giá ký tự 0---->9!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

            }
            else
            {
                MessageBox.Show("Nhập đơn giá sản phẩm!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (txtQuyCach.Text.Length != 0)
            {
                spDTO.QuyCach = txtQuyCach.Text.Trim();
            }
            else
            {
                MessageBox.Show("Nhập quy cách sản phẩm!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (txtDonViTinh.Text.Length != 0)
            {
                spDTO.DVT = txtDonViTinh.Text.Trim();
            }
            else
            {
                MessageBox.Show("Nhập đơn vị tính sản phẩm!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            spDTO.SLTon = 0;
            if (txtDiemCV.Text.Length != 0)
            {
                if (KiemTraSo(txtDiemCV.Text))
                {
                    spDTO.DiemCV = int.Parse(txtDiemCV.Text.Trim());
                }
                else
                {
                    MessageBox.Show("Nhập điểm CV ký tự 0---->9!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }
            else
            {
                MessageBox.Show("Nhập điểm CV sản phẩm!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            SanPhamBUS bus = new SanPhamBUS();
            int kq = bus.UpdateSP(spDTO);
            if (kq == 1)
            {
                MessageBox.Show("Cập nhật thành công!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                btnLuu.Enabled = false;
                btnSua.Enabled = true;
                txtTenSP.ReadOnly = true;
                txtDonGiaKL.ReadOnly = true;
                txtDonGiaTV.ReadOnly = true;
                txtQuyCach.ReadOnly = true;
                txtDonViTinh.ReadOnly = true;
                txtDiemCV.ReadOnly = true;
               
            }
            else
                MessageBox.Show("Cập nhật thất bại!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            btnLuu.Enabled = true;
            btnSua.Enabled = false;
            txtTenSP.ReadOnly = false;
            txtDonGiaKL.ReadOnly = false;
            txtDonGiaTV.ReadOnly = false;
            txtQuyCach.ReadOnly = false;
            txtDonViTinh.ReadOnly = false;
            txtDiemCV.ReadOnly = false;
        }
               
    }
}
